<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Grupo_Usuario_lst( $this );

	class Grupo_Usuario_lst extends Lst
	{
	function Grupo_Usuario_lst( &$oModule )
		{
			$this->Lst( $oModule );

		}
	function initialize()
		{
			// Obtiene de su filtro los parametros que necesita para armar el query
			$oFiltro = $this->oModule->loadClass( 'grupo_usuario_frm' );
			$this->aFields = array_merge ( (array)$this->aFields,  (array)$oFiltro->getFieldArray() );
			$this->setTitle ( "Grupo de Agendas - Usuarios" );
			$this->setSummary( "Esta tabla contiene el detalle de las Grupos de contactos" );
			$this->addColumn ( 'Grupo Agenda', 'cdGrupo', true );
			$this->addColumn ( 'Usuario', 'cUsuario', true );
			$this->addColumn ( 'Organ.', 'cdPermiso1', true );
			$this->addColumn ( 'Lab.', 'cdPermiso6', true );
			$this->addColumn ( 'Persona', 'cdPermiso3', true );
			$this->addColumn ( 'Agenda', 'cdPermiso4', true );
			$this->addColumn ( 'Tarea', 'cdPermiso5', true );
			$this->addColumn ( 'Notas', 'cdPermiso7', true );
		}
	function query()
		{
			// Arma el Query
				$cSql = "SELECT GUs.ncGrupo, Gru.cdGrupo, Usu.ncUsuario, Usu.cUsuario, Pe1.cdPermiso as cdPermiso1, Pe3.cdPermiso as cdPermiso3, Pe4.cdPermiso as cdPermiso4, Pe5.cdPermiso  as cdPermiso5, Pe6.cdPermiso as cdPermiso6, Pe7.cdPermiso as cdPermiso7
									FROM atGrupoUsuario as GUs
									JOIN atGrupo as Gru
										ON GUs.ncGrupo = Gru.ncGrupo
									LEFT JOIN acPermiso as Pe1
										ON GUs.ncPermisoOrganizacion = Pe1.ncPermiso
									LEFT JOIN acPermiso as Pe3
										ON GUs.ncPermisoPersona = Pe3.ncPermiso
									LEFT JOIN acPermiso as Pe4
										ON GUs.ncPermisoAgenda= Pe4.ncPermiso
									LEFT JOIN acPermiso as Pe5
										ON GUs.ncPermisoTarea= Pe5.ncPermiso
									LEFT JOIN acPermiso as Pe6
										ON GUs.ncPermisoLaboral= Pe6.ncPermiso
									LEFT JOIN acPermiso as Pe7
										ON GUs.ncPermisoNotas= Pe7.ncPermiso
									JOIN stUsuario as Usu
										ON Usu.ncUsuario = GUs.ncUsuario";
			// Arma el Filtro de la Consulta
				$this->oWhere->addArray ( $this->aFields, 'GUs');
				return $cSql . $this->oWhere->make();
		}
	function makeListActions()
		{
			$this->oModule->setBack();
			$cParametroRegistro =  $this->getFieldString();
			$this->addListAction ( AGREGAR_UN_USUARIO_A_UN_GRUPO, $cParametroRegistro, 'I', VENTANA_SECUNDARIA);
		}
	function makeRowActions( $aRow )
		{
			$cParametroRegistro =  "ncGrupo=" . $aRow["ncGrupo"] . "&amp;ncUsuario=" . $aRow["ncUsuario"] ;
			$this->addRowAction ( MODIFICAR_UN_USUARIO_DE_UN_GRUPO, $cParametroRegistro , '', VENTANA_SECUNDARIA);
			$this->addRowAction ( ELIMINAR_UN_USUARIO_DE_UN_GRUPO, $cParametroRegistro );
		}
	}
?>
